DESIGN AND FPGA IMPLEMENTATION OF COMPENSATOR FOR SHARPENING CIC FILTER
Abstract. This paper presents a novel compensator design for sharpened CIC (cascade-integrator-comb) proposed in the literature. Sharpened CIC provides higher aliasing attenuation than the CIC filter. However, its passband droop is higher than the corresponding CIC filter and must be compensated. Our motivation was to design a decimator with better compensation than the one proposed in the literature. The proposed decimation filter has two coefficients and six adders. The coefficients are determined using particle swarm optimization (PSO) in MATLAB. Two designs are presented. The first one has two multipliers and six adders. The second is a multiplierless design obtained by presenting optimal coefficients in the signed power-of-two (SPT) form. The proposed design is compared with the design from the literature. The designed compensator is implemented in a field-programmable gate array (FPGA). Details of the implementation are described in the paper.
1. Introduction
Decreasing the sampling rate in the digital domain has many applications in communications, software-defined radio, and oversampled analog-digital converters, among others [1-4]. Decreasing the sampling rate introduces aliasing, which must be eliminated by the digital decimation or antialiasing filter [5]. The cascade-integrator-comb (CIC) filter is the simplest decimation multiplierless filter. The CIC filter must attenuate the aliasing in the bands around the filter’s zeros, called folding bands. As such, attenuation in the folding bands should be high. However, the attenuation provided by the CIC filter is insufficient, especially in the first folding band. Many authors proposed different methods to increase CIC aliasing rejection while trying to keep as much as possible its low complexity [6-11]. Additionally, since the CIC frequency characteristic in the passband of interest is not flat should be compensated by a filter called a compensator. The design of CIC compensators is presented, for example, in works [12-14]. The authors in [6] presented sharpening CIC filters to improve aliasing rejection and the compensators to decrease a high droop in the passband of interest. Different sharpened polynomials are considered, and the compensator designs for several passbands of interest. However, the compensators in [6] do not provide flexibility in design, and the compensator magnitude characteristic in dB is not zero for the zero frequency and should be normalized.
The work proposed here aims to improve the compensator design proposed in [6]. The first goal is to provide flexibility in the design by trading off the number of compensator adders and the compensation quality expressed in the absolute value of the maximum passband deviation in the passband of interest.
The next goal is to get a naturally normalized compensator characteristic. The rest of the paper is organized as described in the following. Section 2 briefly presents the minimax sharpened CIC filters and designed optimum coefficient compensators from [6]. Section 3 elaborates on the proposed compensator design and is illustrated with two examples. The comparison of the proposed design and the design from [6] is elaborated in Section 4. Section 5 presents the results of the FPGA design. Finally, the last section presents concluding remarks.
2. Minimax sharpened CIC filters and optimum compensators
This section briefly introduces the minimax sharpened CIC (SHCIC) filters and the designed corresponding optimum narrowband multiplierless compensators proposed in [6]. Four sharpening polynomials and the corresponding compensators for several passbands of interest are presented.
The coefficients of compensators are given in SPT (signed power-of-two forms). The number of adders varies from 4 to 8, and the corresponding values of the passband deviation vary from 0.03 dB to 0.24 dB, depending on the passband width of interest defined by the passband edge ωp. The method is illustrated in the following example.
Example 1. The sharpened polynomial p(x)=-2-6x2+x4, where x is the CIC filter. The passband of interest is defined by ωp=π/4. The compensator coefficients reported in [6] are given as, g=[-1-23, 2+26, -1-23]. Observe that the compensator coefficients should be normalized by the coefficient K= -1-23+2+26-1-23=-24+26.